/*
 * Texture.hh
 *
 *  Created on: Jan 8, 2013
 *      Author: zermingore
 */

#ifndef TEXTURE_HH_
#   define TEXTURE_HH_

#   include "common/stl.h"

#   include <ImageMagick/Magick++.h>

class Texture
{
    public:
        Texture(GLenum texture, const std::string& FileName);
        ~Texture();

        bool Load();

        void Bind(GLenum TextureUnit);

    private:
        std::string _fileName;
        GLenum _textureTarget;
        GLuint _textureObj;
        Magick::Image* _pImage;
        Magick::Blob _blob;
};


#endif /* TEXTURE_HH_ */
